using System;
using System.Collections;

namespace Deepcode.Flux.Core.Systems.Workflow.Interfaces
{
	/// <summary>
	/// The interface responsible for configuring a workflow handler method
	/// </summary>
	public interface IWorkflowHandlerMethodConfig
	{
		/// <summary>
		/// Add any form controls needed to configure the action.
		/// </summary>
		/// <returns></returns>
		ArrayList AddFormControls(System.Web.UI.Page CallingPage, string HandlerID, int DefinitionID, int ProcessID);
		/// <summary>
		/// Load the XML Serialisation into the new controls
		/// </summary>
		/// <param name="XmlDatapacket"></param>
		void DeSerialise( string XmlDatapacket );
		/// <summary>
		/// Save from the Controls back into an XML String
		/// </summary>
		/// <returns></returns>
		string Serialise();
	}
}
